<?php
	require_once PATH_OBJECT.'dataObject.php';
	
class dataObject_coordCommunication extends dataObject
{
	/* @desc    Identifiant de la coordonnée de communication
     * @var     int
     */
    public $_IDENTIFIANT_COMM  	= 0;
    
	/* @desc    Identifiant de la coordonnée de communication
     * @var     CHAR
     */
    public $_TYPE_COORD_COMM = '';	
    
	/* @desc    Identifiant de la coordonnée de communication
     * @var     ENUM('A', 'I') 
     */
    public $_ETAT_COORD_COMM = '';
	/* @desc    Identifiant de la coordonnée de communication
     * @var     VARCHAR
     */
    public $_VALEUR_COORD_COMM 	 = '';
    
	/* @desc    Identifiant personne associé à la coordonnée de communication
     * @var     int
     */
    public $_IDENTIFIANT_PERSONNE = 0;
    
    
  public function __construct( $iId=0 )
    {
       parent::__construct();

       if ( $iId != 0 )
       {
            $sQuery = "SELECT   *   /*+ dataObject_coordCommunication::__construct */  
                       FROM coordonneescommunication 
            		   WHERE Identifiant_communication = ".$iId;
            
            $aRows =  self::$_oConnexion->query($sQuery);
	  		$aRow = $aRows[0];        
        	$this->_IDENTIFIANT_COMM  	 = $iId;
			$this->_TYPE_COORD_COMM 	 = $aRow['Type_coordonnees_communication'];
			$this->_ETAT_COORD_COMM 	 = $aRow['Etat_coordonnees_communication'];
			$this->_VALEUR_COORD_COMM 	 = $aRow['Valeur_coordonnee_communication'];
			$this->_IDENTIFIANT_PERSONNE = $aRow['Identifiant_personne'];
			 
       }
    }
    /**
     * récupere la table coordCommunication selon le(s) criter(s) précisés ou pas 
	 */
    function coordCommunication_select( $sCritere = null )
    {
   
    	$sQuery = "SELECT   *    
                   FROM coordonneescommunication 
            	   WHERE 1=1 
            	   {$sCritere}";
        $aRow =  self::$_oConnexion->query($sQuery);

        return $aRow;
    }
    
    /*
     * 
     */
	public function coordCommunication_getList()
    {
        return $this->coordCommunication_select ();
    }
    
	/*
	 * 
	 */
	public function coordCommunication_insert()
    {
    	$bId = false;
    	$sQuery = "INSERT INTO coordonneescommunication (
    			Type_coordonnees_communication,
				Etat_coordonnees_communication,
				Valeur_coordonnee_communication,
				Identifiant_personne
    			) values (
				".self::$_oConnexion->text($this->_TYPE_COORD_COMM).",
				".self::$_oConnexion->text($this->_ETAT_COORD_COMM).",
				".self::$_oConnexion->text($this->_VALEUR_COORD_COMM).",
				$this->_IDENTIFIANT_PERSONNE 
    			)";
    	
        	$bId = self::$_oConnexion->execute($sQuery);
    	return $bId;
    }
    /*
     * 
     */
    public function coordCommunication_update()
    {   	
    	$sQuery = "UPDATE coordonneescommunication SET 
    			Type_coordonnees_communication = ".self::$_oConnexion->text($this->_TYPE_COORD_COMM).",
				Etat_coordonnees_communication = ".self::$_oConnexion->text($this->_ETAT_COORD_COMM).",
				Valeur_coordonnee_communication = ".self::$_oConnexion->text($this->_VALEUR_COORD_COMM).",
				Identifiant_personne  = $this->_IDENTIFIANT_PERSONNE 
	    		WHERE Identifiant_communication 	= ".$this->_IDENTIFIANT_COMM;

        $bRetour = self::$_oConnexion->execute($sQuery);
    	
    	return $bRetour;
    }
    /*
     * 
     */
	public function coordCommunication_delete()
    { 	
	    $sQuery = "DELETE FROM coordonneescommunication WHERE Identifiant_communication = ".$this->_IDENTIFIANT_COMM;
    	
    	return self::$_oConnexion->execute($sQuery);
    }
    
	function coordCommunication_getActiveListForPersonne( $idPersonne )
    {
        $sCritere = " AND Identifiant_personne= '".$idPersonne."' 
        			  AND Etat_coordonnees_communication = 'A' ";
    	  
    	$aRow = $this->coordCommunication_select($sCritere);
      
        return $aRow;
    }
    function coordCommunication_desactive()
	{ 	
    	$this->_ETAT_COORD_COMM = 'I';
    	
    	return $this->coordCommunication_update();
    }
}
?>